1. Tear off the "Tools" menu. If you double-click on the Eraser tool, you'll erase all card paint. This can be quite shocking if you do it by mistake. If this happens to you, either select UNDO from the Edit menu, press the tilde ( ~ ) key, the escape key, or select CMD-Z from the keyboard before doing anything else. This will bring your paint back for you. If CMD-Z doesn't get it back, you can try REVERT from the Paint menu. Revert takes you back to the state the paint was in when you last entered the card. Leaving a card, even for a moment, is the same as saving all the paint elements on that card or choosing Keep from the Paint menu. For fun, double-click on all the other powerful paint tools and see what happens.
2. To initialize a variable in HyperTalk, you should put the assignment of the variable in an "on openStack" handler. You will normally only want to initialize your variables the first time you enter your stack. If this is so, you will need to put the following into your openStack handler...
on openstack
global var
if var is empty then put 12 into var
end openstack
This way, no matter how many times the user comes into their stack during a HyperCard session, the variable "var" will only be assigned this value the first time, since the second time into the stack the global variable will no longer be empty.
3. If you have a non-SCSI (old HD-20) hard disk or, heaven forbid, a floppy based system, and you have tried to play a long, sophisticated sound in HyperCard, you might notice very poor sound quality because of numerous clicks and pops. These clicks and pops are caused by your disks access time being too slow when HyperCard tries to access them. There is, however, a nice workaround (as suggested by Barbara at Farallon Computing). To stop HyperCard from accessing the disk (doing any processing) while the sound is playing. Try this in your script...
play "nameOfSound"
wait until the sound is "done"
4. A tip from Paul Foraker... If the msg box is already open, and you are typing in a field, there is a way to start typing in the msg box without moving your fingers from the keyboard. Type CMD-M twice and you can now type in the msg box.
5. Tear off the "Tools" windoid. Double click on "A" to access different fonts and font attributes for typing Paint Text onto the card or background. If you have already started typing and have not clicked anywhere else, when you change the font you will change the font for everything you just typed. If you have already started typing and you wish to change the font only for what you type next, then click with the mouse at where you want to start before again double-clicking on the "A" in the tool menu.
6. "Not" in HyperTalk works similarly to English. Therefore , you can say...
if variable is not "Yes" then go next card
You may also think of "Not" in HyperTalk as a boolean form of the false condition. For example you may have a button which you want to alternately hide and show a field...
on mouseup
set visible of field "fldName" to not visible of field "fldName"
end mouseup
7. If you protect a stack to allow only the browsing userlevel, you can reset it to a different level by pressing on the Command key before clicking on the File menu. You will then be able to choose "Protect